/**
 * PersistenceProvider.java
 * 卢晓峰
 * Email：lxf9601@gmail.com
 * QQ：297051898
 * Created by 2010-7-18
 */
package com.autoabacus.core.config.persistence;

import java.util.List;

import com.autoabacus.core.config.PageData;

/**
 * 提供配置系统的持久化一系列功能
 * @author 卢晓峰
 */
public interface PersistenceProvider {
	
	/**
	 * 执行插入操作
	 * @param querySource
	 * @return
	 */
	public int executeInsert(String queryLanguage);
	
	/**
	 * 更新或删除
	 * @param queryLanguage 查询语句
	 * @return
	 */
	public int executeUpdate(String queryLanguage);
	
	/**
	 * 查询列表
	 * @param queryLanguage 查询语句
	 * @return
	 */
	public List<Class<?>> queryList(String queryLanguage);
	
	/**
	 * 分页查询列表
	 * @param queryLanguage 查询语句
	 * @param page 页码
	 * @param size 页大小
	 * @return
	 */
	public PageData queryPage(String queryLanguage, int size, int page);
	
	/**
	 * 批量更新
	 * @param qls 查询语句集合
	 * @return
	 */
	public int batchUpdate(String[] qls);
	
}
